#ifndef __STRUCT_DIFF_H__
#define __STRUCT_DIFF_H__
#include "StructBase.h"
#ifdef __cplusplus
extern "C" {
#endif

/* DataPlacePoint *****************************************/
typedef struct _TDataPlacePoint	//24 bytes
{
	TGridPosCoor  OppoCoor;
	int			  ClassType;
	int			  PlaceName;
	unsigned long RoadNameNum : 18;
	unsigned long AddrNameNum : 14;
	int			  TerritoryCode;
	unsigned long TelAreaCode : 5;
	unsigned long TelLocalNum : 27;
}TDataPlacePoint;

/////////////////////////////////////////////

/* FixPos ***********************************************/
typedef struct _TFixPos
{
	int		GridNum;
	int		LinkNum;

	int 			DirFlag;
	TPosCoor		Pos;
}TFixPos;

/* MatchPos ***********************************************/
typedef struct _TMatchPos
{
	short int		GridNum;		// -1 if not match!
	short int		LinkNum;
	short int		PointNum;
	short int		DirFlag;
	TPosCoor		Pos;
}TMatchPos;

typedef struct _TCam
{
	unsigned short id;
	char road_class;
	char dir;
	TGridPosCoor link_pos[2];	
}TCam;


typedef struct _TFreeWayData
{
	unsigned short int LinkNum;
	unsigned char iType;
	unsigned char LinkSide;
	char szName[3][FREEWAYPOI_NAME_BUFFER];	
}TFreeWayData;


#ifdef __cplusplus
}
#endif

#endif
